home *** CD-ROM | disk | FTP | other *** search
/ Aminet 45 / Aminet 45 (2001)(GTI - Schatztruhe)[!][Oct 2001].iso / Aminet / dev / e / yaec.lha / examples / filereq.e < prev    next >
Text File  |  2001-08-12  |  2KB  |  48 lines

  1. -> filereq.e
  2.  
  3. MODULE 'asl'
  4. MODULE 'libraries/asl'
  5.  
  6. ENUM ERR_NONE, ERR_ASL, ERR_KICK, ERR_LIB
  7.  
  8. RAISE ERR_ASL  IF AllocAslRequest()=NIL
  9. RAISE ERR_KICK IF KickVersion()=FALSE
  10. RAISE ERR_LIB  IF OpenLibrary()=NIL
  11.  
  12. CONST MYLEFTEDGE=0, MYTOPEDGE=0, MYWIDTH=320, MYHEIGHT=400
  13.  
  14. PROC main() HANDLE
  15.   DEF fr:PTR TO filerequester
  16.   KickVersion(37)  -> E-Note: requires V37
  17.   aslbase:=OpenLibrary('asl.library',37)
  18.   fr:=AllocAslRequest(ASL_FILEREQUEST,
  19.                      [ASL_HAIL,       'The RKM file requester',
  20.                       ASL_HEIGHT,     MYHEIGHT,
  21.                       ASL_WIDTH,      MYWIDTH,
  22.                       ASL_LEFTEDGE,   MYLEFTEDGE,
  23.                       ASL_TOPEDGE,    MYTOPEDGE,
  24.                       ASL_OKTEXT,     'O KAY',
  25.                       ASL_CANCELTEXT, 'not OK',
  26.                       ASL_FILE,       'asl.library',
  27.                       ASL_DIR,        'libs:',
  28.                       NIL])
  29.   IF AslRequest(fr, NIL)
  30.     WriteF('PATH=\s  FILE=\s\n', fr.drawer, fr.file)
  31.     WriteF('To combine the path and filename, copy the path\n')
  32.     WriteF('to a buffer, add the filename with Dos AddPart().\n')
  33.   ELSE
  34.     -> E-Note: C version gets this wrong!
  35.     WriteF('User Cancelled\n')
  36.   ENDIF
  37. EXCEPT DO
  38.   IF fr THEN FreeAslRequest(fr)
  39.   IF aslbase THEN CloseLibrary(aslbase)
  40.   SELECT exception
  41.   CASE ERR_ASL;  WriteF('Error: Could not allocate ASL request\n')
  42.   CASE ERR_KICK; WriteF('Error: Requires V37\n')
  43.   CASE ERR_LIB;  WriteF('Error: Could not open ASL library\n')
  44.   ENDSELECT
  45. ENDPROC
  46.  
  47. CHAR '$VER: filereq 37.0'
  48.